Scroll to navigation

fribidi_get_par_direction(3) Programmer's Manual fribidi_get_par_direction(3)

NAME

fribidi_get_par_direction - get base paragraph direction

SYNOPSIS

#include <fribidi.h>

extern FriBidiParType fribidi_get_par_direction
(
const FriBidiCharType *bidi_types,
const FriBidiStrIndex len
);

PARAMETERS

Input list of bidi types as returned by fribidi_get_bidi_types().

Since there are 23 possible values for a const FriBidiCharType, they are not all listed here.

Input string length.

DESCRIPTION

This function finds the base direction of a single paragraph, as defined by rule P2 of the Unicode Bidirectional Algorithm available at http://www.unicode.org/reports/tr9/#P2.

You typically do not need this function as fribidi_get_par_embedding_levels() knows how to compute base direction itself, but you may need this to implement a more sophisticated paragraph direction handling. Note that you can pass more than a paragraph to this function and the direction of the first non-neutral paragraph is returned, which is a very good heuristic to set direction of the neutral paragraphs at the beginning of text. For other neutral paragraphs, you better use the direction of the previous paragraph.

RETURNS

Base pargraph direction. No weak paragraph direction is returned, only LTR, RTL, or ON.

Possible values for an extern FriBidiParType are as follows:

Left-To-Right paragraph.
Right-To-Left paragraph.
DirectiOn-Neutral paragraph.
Weak Left To Right paragraph.
Weak Right To Left paragraph.

SEE ALSO

fribidi_shape_arabic(3), fribidi_get_par_embedding_levels_ex(3), fribidi_reorder_line(3), fribidi_get_bidi_type(3), fribidi_get_bidi_types(3), fribidi_get_bidi_type_name(3), fribidi_debug_status(3), fribidi_set_debug(3), fribidi_charset_to_unicode(3), fribidi_unicode_to_charset(3), fribidi_parse_charset(3), fribidi_mirroring_status(3), fribidi_set_mirroring(3), fribidi_reorder_nsm_status(3), fribidi_set_reorder_nsm(3), fribidi_log2vis_get_embedding_levels(3), fribidi_get_type(3), fribidi_get_type_internal(3), fribidi_remove_bidi_marks(3), fribidi_log2vis(3), fribidi_get_par_embedding_levels(3), fribidi_join_arabic(3), fribidi_get_joining_type(3), fribidi_get_joining_types(3), fribidi_get_joining_type_name(3), fribidi_get_mirror_char(3), fribidi_shape_mirroring(3), fribidi_get_bracket(3), fribidi_get_bracket_types(3), fribidi_shape(3)

19 February 2018 c2man fribidi-bidi.h